<?php
/* coded by e1r0nd 17.01.12 */
/* Placed in public domain      */

class classDB {
	protected static $instance;
	
	public static function getInstance() {
        if ( is_null(self::$instance) ) {
            self::$instance = new classDB;
        }
        return self::$instance;
    }

	public function DB_connect ($dbhost, $dbname, $dbuser, $dbpass) {
		mysql_pconnect($dbhost, $dbuser, $dbpass);
		mysql_select_db($dbname);
		// в какой кодировке получать данные от клиента
		@mysql_query('set character_set_client="utf8"');
		// в какой кодировке получать данные от БД для вывода клиенту
		@mysql_query('set character_set_results="utf8"');
		// кодировка в которой будут посылаться служебные команды для сервера
		@mysql_query('set collation_connection="utf8_general_ci"');
	}

	public function DB_read ($what, $table, $s='id', $equal='', $terms='', $order='', $asc='') {
		$query = "SELECT $what FROM $table WHERE ";
		$query .= ($equal == '-1') ? $terms : "$s = $equal";
		if ($order) {
			$query .= " ORDER BY $order $asc";
		}
// 		 echo $query; //fot test only
		return mysql_query($query);
	}
	
	public function DB_remove ($table, $id) {
		$query = "DELETE FROM $table WHERE id = " .$id;
// 		echo $query; //fot test only
		mysql_query($query);
	}
	
	public function DB_insert ($where, $what, $value) {
		$query = "INSERT INTO $where ($what) VALUES ($value)";
// 		echo $query; //fot test only
		mysql_query($query);
	}

	public function DB_update ($where, $what, $id) {
		$query = "UPDATE $where SET $what WHERE `id` = $id";
// 				echo $query; //fot test only
		mysql_query($query);
	}
	
	public function DB_restore_default ($uid) {
		$uid = (int) $uid;
		mysql_query("DELETE FROM `Books` WHERE `uid` = '$uid'");
		mysql_query("DELETE FROM `Quotes` WHERE `uid` = '$uid'");
		if (!$uid) {
			echo $uid;
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '0', '2012-08-09', '2012-08-10', 'Принцип сперматозоида', 'Михаил Литвак', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '0', '2012-02-12', '2012-02-13', 'Нейромант', 'Уильям Гибсон', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '0', '2012-11-15', '2012-11-16', 'Богатый папа, бедный папа', 'Роберт Т. Кийосаки, Шэрон Л. Лектер', '')");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '0', '2012-11-14', '2012-11-15', 'Приключения Алисы в Стране Чудес. Алиса в Зазеркалье', 'Льюис Кэрролл', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '6', '2012-11-10', '', 'iКона. Стив Джобс', 'Джеффри С. Янг, Вильям Л. Саймон', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '6', '2012-10-24', '', 'Человек в поисках смысла', 'В. Франкл', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '6', '2012-10-08', '', 'Дочь железного дракона', 'Майкл Суэнвик', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '6', '2012-06-30', '', 'Основы композиции', 'О. Л. Голубева', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '5', '2012-11-05', '2012-11-10', 'Deadline. Роман об управлении проектами', 'Том ДеМарко', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '5', '2012-11-01', '2012-11-05', 'Остров', 'Олдос Хаксли', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '4', '2012-10-24', '2012-10-30', 'Невротическая личность нашего времени', 'Карен Хорни', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '2', '2012-10-30', '2012-11-05', 'О дивный новый мир', 'Олдос Хаксли', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '5', '2012-10-13', '2012-10-24', 'Введение в психиатрию и психоанализ для непосвященных', 'Эрик Берн', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '4', '2012-10-08', '2012-10-13', 'Не нойте!', 'Михаил Литвак', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '3', '2012-10-01', '2012-10-08', 'Мотивация и личность', 'Абрахам Маслоу', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '2', '7', '', '', 'Гугландские топи', 'Макс Фрай', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '1', '7', '', '', 'Трансерфинг реальности. Ступень V. Яблоки падают в небо (аудиокнига МР3)', 'Вадим Зеланд', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '2', '7', '', '', 'Игры, в которые играют люди. Люди, которые играют в игры', 'Эрик Берн', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '1', '7', '', '', 'Недетские игры', 'Дэвид Бишоп', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '7', '', '', 'Как быстро привести дела в порядок. 52 принципа эффективности без стресса', 'Дэвид Ален', '');");
			mysql_query("INSERT INTO `Books` (`id` , `uid`, `position` , `rate` , `started_at` , `finished_at` , `title` , `author` , `notes` ) VALUES (NULL , '0', '0', '8', '', '', 'Голый завтрак', 'Уильям Берроуз', '');");
			
			mysql_query("INSERT INTO `Quotes` (`id` , `uid`, `title` , `author` , `content` ) VALUES (NULL , '0', 'Невротическая личность нашего времени', 'К. Хорни', 'Невротиком может стать такой человек, который пережил обусловленный культурой трудности в обостренной форме, преломив их главным образом через сферу детских переживаний, и в следствии этого оказался неспособен их разрешить или разрешил их ценой большого ущерба для своей личности. Мы могли бы назвать его пасынком нашей культуры.');");
			mysql_query("INSERT INTO `Quotes` (`id` , `uid`, `title` , `author` , `content` ) VALUES (NULL , '0', 'О дивный новый мир', 'О. Хаксли', 'В натуральном виде счастье всегда выглядит убого рядом с цветистыми прикрасами несчастья. И, разумеется, стабильность куда менее колоритна, чем нестабильность. А удовлетворенность совершенно лишена романтики сражений со злым роком, нет здесь красочной борьбы с соблазном, нет ореола гибельных сомнений и страстей. Счастье лишено грандиозных эффектов.');");
			mysql_query("INSERT INTO `Quotes` (`id` , `uid`, `title` , `author` , `content` ) VALUES (NULL , '0', 'Человек находит друга', 'К. Лоренц', 'Прекрасна и поучительна только та любовь к животным, которая порождается любовью ко всякой жизни и в основе которой должна лежать любовь к людям. Только те, кто способен чувствовать именно так, могут дарить свою привязанность животным без нравственного ущерба для себя. Разочарованный и ожесточенный человек, который из-за прегрешений отдельных индивидов восстает против всего человечества и отдает свою любовь только собакам и кошкам, совершает роковую и отвратительную ошибку. Ненависть к людям и любовь к животным – зловещая и опасная комбинация.');");
		}
	}
	
	public function DB_count ($what) {
		$query = "SELECT COUNT(1) FROM `Books` WHERE $what";
		return mysql_query($query);
	}

}
?>